home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Business Master (3rd Edition)
/
The Business Master (3rd Edition).iso
/
files
/
utilreen
/
vmix
/
vmix278.exe
/
VMIX.DOC
< prev
next >
Wrap
Text File
|
1992-08-25
|
129KB
|
2,023 lines
_______
____|__ | (tm)
--| | |-------------------
| ____|__ | Association of
tm | | |_| Shareware
VMiX 386 Version 2.78 |__| o | Professionals
----------------------- -----| | |---------------------
|___|___| MEMBER
Copyright (c) 1985-1992
Commercial Software Associates
Post Office Box 36 BBS (714) 720-1139 (24 Hrs.)
Corona del Mar, California 92625 VOICE (714) 720-1214 (8-6pm PDT)
_______________________________________________________________
| |
| WHAT IS VMiX? |
| ------------- |
| |
| VMiX is a multitasking and multiuser environment for |
| IBM PC's and PS/2's (PC, XT, AT, PS/2) compatibles. |
| |
| Version 2.78 configures itself to your processor. If you |
| have an 8088 or 8086, then your applications must share |
| the up to 570 Kbytes available after VMiX loads in low |
| memory. |
| |
| If you have an 80286, then VMiX can multitask in low |
| conventional memory or it can task switch applications |
| to extended memory. VMiX can not execute tasks in 286 |
| extended memory. Swapped tasks can be swapped back from |
| 286 extended memory automatically for a timeslice of the |
| processing or they can remain suspended until reactivated |
| by the user. |
| |
| If you have an 80386/486, VMiX will multitask in extended |
| memory. It will execute each task in virtual 8086 Mode, |
| with protected mode pagging, virtualized video and key- |
| board, mapping a new 640 Kbytes to each new task. With |
| DOS 5.0 relocated to high memory and VMiX relocated to |
| upper memory above video ram, up to 600Kb can be used by |
| each application. |
| |
| Multitasking is supported at the console, in windows or |
| full screen(s). All tasks execute concurrently, at the |
| console, remote terminal, or at the console while running |
| at a remote VMiX server. Since the console video display |
| can be virtualized, you can switch between screens (each |
| with multiple windows). If you do not like windows at |
| your console or flipping screens, you can choose to use |
| terminals or PC's attached to the COMM ports. |
| |
| The VMiX environment uses the best from DOS and UNIX in |
| its implementation of the user control shell and multi- |
| tasking. The user has a choice between two interfaces: |
| the VMiX shell, which is transparent to the DOS shell |
| (you get both sets of commands), or the VMiX pull-down |
| menus, a user friendly multi-threaded environment. |
|_______________________________________________________________|
_______________________________________________________________
| Cont'd |
| ------ |
| |
| Applications that do not write directly to the video, |
| will display correctly at a terminal in all VMiX modes. |
| Applications that write directly to the video, can be |
| virtualized at the 386 console or at terminals only when |
| using VMiX in 386 Mode with VMiX's ANSI terminal emula- |
| tion. Any commercially available remote console utility |
| can be used in other modes to handle direct video writes. |
| |
| VMiX.INI is a text autoconfigure file that allows start- |
| up scripts, remote login passwords, and remote login |
| scripts to be specified by the system administrator. |
| |
| VMiX is fully compatible with DOS 3.1 through 5.00 |
| VMiX can now also be used with DRDOS and XDOS. |
|_______________________________________________________________|
_______________________________________________________________
| |
| WHAT IS AHEAD FOR VMiX? |
| |
| - A DPMI interface, so that the VMiX protected mode |
| driver can be loaded in the CONFIG.SYS file and not |
| with the multitasker VM_BOOT.EXE. |
| - A file system distributed among several VMiX hosts, |
| allowing sharing of remote hard disks. |
|_______________________________________________________________|
_______________________________________________________________
| |
| VMiX is not free public domain software. |
| It is copyrighted commercial software distributed as |
| 'TRY BEFORE PURCHASE', shareware software. |
| |
| |
| You may copy VMiX freely for non-commercial distribution, |
| provided you follow the restrictions listed below in the |
| LIMITED SHAREWARE LICENSE: |
| |
| |
| *** COPYRIGHT NOTICE *** |
| |
| Copyright (c) 1985-1992 |
| by: J. Anthony Borras |
| All Rights Reserved |
| |
| |
| LIMITED SHAREWARE LICENSE |
| |
| - VMiX 386 may be copied for others to |
| try, subject to the following copying |
| restrictions specified by this time |
| limited license: |
| |
| All copies distributed to others |
| must include a copy of the Copyright |
| Notice, the Limited Shareware License, |
| Disclaimer of All Warranties and |
| Liabilities, and the Software License |
| Agreement. These documents are ALREADY |
| incorporated into file TECHREF.DOC in |
| the distribution archive VMIX???.EXE. |
| |
| A registration fee of $59 is required |
| from personal users (up to 3 CPU's) as |
| a condition of continued use of the |
| program beyond a trial usage period of |
| 30 days. |
| |
| - The party agrees that unauthorized |
| usage under this agreement will cause |
| great damage to the licensor, Commercial |
| Software Associates. |
| |
| |
| Purchase Price/Registration....... $59. |
| |
| SOURCE license ................... CALL |
| |
| SITE license ..................... CALL |
| |
| UPGRADE Version 2.XX ............ $20. |
| |
| California residents add 7.75% sales tax |
|_______________________________________________________________|
_______________________________________________________________
| |
| WHAT IS UNIQUE ABOUT VMiX? |
| -------------------------- |
| |
| VMiX is supported shareware. In the rapidly developing |
| multitasking market, VMiX has undergone over 33 new |
| releases in the last 6 years, each with new and enhanced |
| features. |
| |
| VMiX is A COMMAND LINE MULTITASKER or you can make use |
| of its pull-down menus shell, VW.EXE. |
| |
| VMiX provides an easy to install and operate environment |
| that can be used to multitask DOS on 8086 computers. It |
| can also be used to task switch applications to extended |
| memory on 80286 AT's. VMiX's native environment is the |
| 80386, on those computers, use of extended memory and |
| emulated expanded memory is automatic. |
| |
| VMiX allows 2 or more computers running VMiX to be linked |
| as a distributed processing environment, where different |
| client machines can execute programs in other servers. |
| VMiX also provides remote modem access to any of your |
| multiuser PC hosts. |
| |
| If you can execute your applications from DOS, they are |
| already installed for VMiX. VMiX does not use PIF or |
| other types of application configuration files. |
| |
| |
| APPLICATION SCREEN HANDLING |
| logged-in |
| do do -W terminal |
| -------------------------------------------- |
| 8086 Mode Text Mode Text Mode Text Mode |
| Graphics Mix Txt/Grphcs - |
| BIOS Video BIOS Video BIOS Video |
| - - ** Direct Video |
| -------------------------------------------- |
| 286 Mode Text Mode Text Mode Text Mode |
| Graphics Mix Txt/Grphcs - |
| BIOS Video BIOS Video BIOS Video |
| - - ** Direct Video |
| -------------------------------------------- |
| 386 Mode Text Mode Text Mode Text Mode |
| Graphics Mix Txt/Grphcs - |
| BIOS Video BIOS Video BIOS Video |
| Direct Video Direct Video Direct Video |
| |
| ** VMiX will handle programs executed at a terminal (COMM |
| port) that do direct video screen writes only in 386 Mode,|
| in other modes you will need to use VMiX in conjunction |
| with a program like 'Remote Console'tm (see below). |
| |
| The VMiX interface is layered, to protect the casual user |
| who just wants to get maximum utility and does not need |
| or wants to learn the full system. For the advanced user,|
| VMiX provides an internal 'debug' shell, which can be |
| coupled with a DOS debugger, as a concurrently executing |
| VMiX task, to examine other live applications. |
|_______________________________________________________________|
_______________________________________________________________
| |
| HOW TO INSTALL MY APPLICATIONS? |
| ------------------------------- |
| |
| If you can execute your applications from DOS, they |
| are already installed for VMiX. VMiX does not use PIF |
| or other types of application configuration files. |
| |
| Applications that write directly to the screen can |
| co-exist with other applications at the console, but |
| will not display properly when running VMiX in non-386 |
| computers. On 286 and 8086 PCs, applications that write |
| directly to video can bleed-through to other tasks also |
| running at the console, and will not display correctly |
| when using a remote terminal. On 286 and 8086 PCs, you |
| might be able to get around this problem by setting a |
| different video page with the command 'set video -p', |
| before starting the application. |
| |
| VMiX will multitask and provide remote user support on |
| any 100% IBM compatible, for any processor and installed |
| memory configuration (See StartUp System Options, below). |
| |
| If total system memory is less than 3 Megabytes, only the |
| text portions of the Video Memory will be virtualized and |
| protected for each task (to allow as many text tasks as |
| possible to be executed with limited memory resources). |
| Consequently, unless you start a new task after the parent|
| console is already set to graphics mode, new tasks that |
| set the video to graphics mode will NOT have their video |
| protected, when you switch the display between multiple |
| applications. |
|_______________________________________________________________|
_______________________________________________________________
| |
| HOW MUCH MEMORY WILL REMAIN AFTER VMiX IS INSTALLED? |
| ---------------------------------------------------- |
| |
| On a 640Kb memory 8088 PC or 80286 AT with DOS 5.0 and |
| no low memory installed TSR's, there will remain 470Kb |
| to 576Kb of memory for applications. VMiX can be told |
| to fill memory above 640Kb with 96Kb of additional |
| program space, in text modes on EGA/VGA equipped systems. |
| |
| On the 80386, each task gets it's own 640Kb from your |
| extended memory pool, however only 470Kb to 600Kb will be |
| free depending on your DOS configuration and whether VMiX |
| has been relocated to upper memory. |
| |
| How big a program you can run and multitask under VMiX |
| will depend on your configuration (FILES, BUFFERS, etc.) |
| and the size of VMiX's footprint in DOS space. Normally, |
| VMiX has a DOS resident size of 120Kb, but if VMiX has |
| been relocated to upper memory this size is only 38Kb. |
|_______________________________________________________________|
_______________________________________________________________
| |
| HOW DO I VALIDATE THAT VMIX IS WORKING CORRECTLY? |
| ------------------------------------------------- |
| |
| To test VMiX, we recommend that you perform the two |
| tests below: |
| |
| ----- TEST 1: Validates that VMiX itself is working |
| correctly. |
| |
| invoke VMiX as follows: (from the directory where |
| you copied VM_BOOT.EXE) |
| |
| VM_BOOT do /set |
| |
| and PRESS <ENTER> |
| This will start 2 tasks: |
| the startup main window, |
| where the keyboard will |
| remain unless you press |
| Shift-Tab, and |
| a VMiX debugger task |
| displaying information |
| about the 'set' command. |
| If both windows display activity, the TEST PASSED.|
| From the root window type 'quit' and press <ENTER>|
| to exit VMiX. |
| |
| |
| ----- TEST 2: Validates that VMiX, your version of DOS, |
| and your system's ROM BIOS, get along fine. |
| |
| invoke VMiX as follows: (from the directory where |
| you copied VM_BOOT.EXE) |
| |
| VM_BOOT do dir c: / set process -d1 / type c:\autoexec.bat |
| |
| and PRESS <ENTER> |
| This will start 2 tasks: |
| the startup main window, |
| displaying autoexec.bat |
| (where the keyboard focus|
| will remain) and a second|
| windowed task doing your |
| directory. |
| |
| 'set process -d1' just adds a 1 second delay. |
| If both windows display activity, the TEST PASSED.|
| From the root window type 'quit' and press <ENTER>|
| to exit VMiX. |
| |
| |
| ----------------------------- |
| |
| IN THE EVENT THAT VMiX FAILS TO BOOT OR THE SCREEN HANGS |
| DURING THE TESTS, CHECK THE SECTION 'VMiX STARTUP PROBLEMS',|
| GIVEN BELOW. |
|_______________________________________________________________|
_______________________________________________________________
| |
| HOW TO INSTALL VMiX? |
| -------------------- |
| |
| For more detailed information, see 'General Instructions',|
| The Easy Way' and 'The Advanced Way' given below. |
| |
| |
| VMiX is easy to install. Simply copy the executable |
| files in the VMiX archive to your directory, include the |
| install directory in your PATH, remove other extended |
| memory managers from your CONFIG.SYS and execute the boot |
| module VM_BOOT.EXE |
| |
| If VMiX fails to start correctly on your computer, you |
| can use several startup options. |
| |
| 'VM_BOOT 8086' will force real mode on 80286/386/486 PC's.|
| |
| 'VM_BOOT 286' will force 80286 VMiX Mode on 80386/486 |
| computers. |
| |
| 'VM_BOOT low' or VM_BOOT low 286' will inhibit relocation|
| of portions of VMiX to extended memory. |
| |
| 'VM_BOOT ems=ffff' will inhibit VMiX from relocating its |
| stacks to upper memory. |
| |
| Some EGA/VGA's will display no cursor or what appears to |
| be a broken cursor when Shift-Tab is pressed to switch |
| tasks. To correct this, start VMiX with the command line |
| |
| 'VM_BOOT egacur' |
| |
| Use of these options might allow VMiX to execute in your |
| environment. |
| |
| REFER TO THE SECTION BELOW FOR COMMON STARUP PROBLEMS. |
| |
| You can customize how VMiX starts-up by including other |
| command arguments in the VM_BOOT command line, from DOS. |
|_______________________________________________________________|
_______________________________________________________________
| |
| RELOCATING VMiX to UPPER MEMORY (386/486) |
| ----------------------------------------- |
| |
| Your system must be at least a 386 computer and must |
| have a minimum of 160 Kbytes of unused space above the |
| video ROM and before the system ROM (C800 - EFFF). |
| |
| Start VMiX with the command line: |
| |
| C:\VMiX\> VM_BOOT ems=ffff/loadup vm_boot etc...... |
| |
| VMiX will start and load a second copy of |
| itself to upper memory, then the first copy |
| will shutdown, return to the DOS prompt and |
| automatically restart the upper memory copy. |
|_______________________________________________________________|
_______________________________________________________________
| |
| RECOMMENDED CONFIG.SYS (file contents for DOS 5.0) |
| ---------------------- |
| |
| SHELL = C:\COMMAND.COM /P /E:512 |
| FCBS = 0,0 (Optional) |
| STACKS = 9,192 (Optional, Do not set to 0,0) |
| DOS = HIGH (Do not use the UMB option!) |
| BUFFERS = 15 (Why use more?) |
| FILES = 20 (More than 20, if apps need it.) |
| LASTDRIVE = H (Optional, set your last drive here) |
| DEVICE = HIMEM.SYS |
| DEVICE = MOUSE.SYS /2 (Mouse Driver on COM2, if any...) |
|_______________________________________________________________|
_______________________________________________________________
| |
| RECOMMENDED CONFIG.SYS (file contents for DRDOS 6.0) |
| ---------------------- |
| |
| SHELL = C:\COMMAND.COM /P /E:512 |
| FCBS = 0,0 (Optional) |
| HIDOS = ON |
| BUFFERS = 15 (Why use more?) |
| FILES = 20 (More than 20, if apps need it.) |
| LASTDRIVE = H (Optional, set your last drive here) |
| DEVICE = HIDOS.SYS |
| DEVICE = MOUSE.SYS /2 (Mouse Driver on COM2, if any...) |
|_______________________________________________________________|
_______________________________________________________________
| |
| G E N E R A L I N S T R U C T I O N S |
| |
| 1) BEFORE USING VMiX 386, you must copy |
| the self-extracting archive from the |
| Shipping Diskette to your system |
| hard disk (or 1.2+ MBYTE floppy). |
| |
| NEVER use the Shipping Diskette to |
| actually run VMiX 386. Use the |
| copies that you have made from it |
| and keep the Master Disk in a cool, |
| secure place. |
| |
| STEP 1: Insert the Shipping Diskette in Drive A: |
| |
| STEP 2: Make a VMiX subdirectory in your hard disk. |
| |
| md \VMiX |
| cd \VMiX |
| |
| |
| STEP 3: Copy A:*.* to C:\VMiX |
| |
| STEP 4: Execute the archive to extract the files. |
| |
| STEP 5: Verify that the CONFIG.SYS file, in your |
| boot directory, includes the following 2 |
| lines and no DEVICE= lines that invoke an |
| extended memory driver like 386MAX.SYS, |
| QEMM.SYS, EMM386.SYS or SMARTDRV.SYS. |
| Also verify that you are NOT using an |
| ANSI.SYS driver. |
| |
| BUFFERS = 15 (or more) |
| FILES = 20 (or more) |
| |
| |
| 2) TO EXECUTE THE VMiX 386 PROGRAM you |
| will need MS-DOS Version 3.10 or |
| above, and 256Kb of memory. A color |
| graphics card, VGA is recommended |
| for the console display. |
| |
| If you have a Monochrome Adapter, |
| VMiX will sense it. |
| |
| VMiX 386 does not need to operate in |
| protected mode in all configurations. |
| It will execute properly in PC's |
| with 8088 processors. |
| |
| Start VMiX by typing: |
| |
| C> VM_BOOT <ENTER> |
| |
| After VMiX starts, typing a '?' will |
| display all the available commands. |
|_______________________________________________________________|
_______________________________________________________________
| Cont'd |
| ------ |
| |
| TYPE: debug <ENTER> |
| (the prompt will change to: - ) |
| |
| Next, try 'set' or 'exam' and VMiX |
| VMiX will display how to complete |
| the command. VMiX will prompt for |
| most command line arguments, not |
| included in the command line: |
| |
| TYPE: set video -m<ENTER> |
| to see the video modes available, |
| |
| TYPE: set term -t<ENTER> |
| to see the terminals supported. |
| |
| From the - prompt, type 'quit' to |
| to return to the root shell. |
| |
| NOTE: The debugger shell is now |
| obsolete, you can enter the commands |
| shown above directly from the root |
| shell !!! |
| |
| 3) TO START VMiX 386 WITH THE PULL-DOWN |
| MENUS INTERFACE: |
| |
| Set the PATH for the VMiX utilities: |
| |
| C> PATH = C:\VMiX <ENTER> |
| |
| Start VMiX by typing either: |
| |
| C> VM_BOOT VW <ENTER> (for color) |
| |
| C> VM_BOOT VW -m <ENTER> (for BW mono) |
| |
| When VMiX starts, the top screen line |
| will display the available menus. |
| Move to the desired menu by pressing |
| right or left-arrow keys. Select a |
| menu by pressing the down-arrow key, |
| <ENTER>, or by typing the CAPITALIZED |
| letter of the menu name. |
| |
| Select a menu option by first moving |
| to the desired item with the down- |
| arrow and press <ENTER> to execute |
| the option. Exit from the VW utility |
| or pull-down menu with the <Esc> key. |
| |
| Pull-down options that display an ->, |
| indicate an additional pull-down, |
| reachable by pressing <ENTER> or the |
| right-arrow key. |
| |
|_______________________________________________________________|
_______________________________________________________________
| Cont'd |
| ------ |
| |
| When using a NON-ANSI terminal to run |
| VW.EXE, first use <Ctrl><F> to enable |
| function key emulation, then <Ctrl><L> |
| becomes right arrow, back-space will |
| act as left-arrow, <Ctrl><J> and |
| <Ctrl><K> will act as down-arrow and |
| up-arrow correspondingly. |
| |
| Pressing the [Home] key, while in VW, |
| will cause a repaint of the VW menu. |
|_______________________________________________________________|
_______________________________________________________________
| |
| THE EASY WAY TO START VMiX (With Pull-Down Menus) |
| -------------------------- |
| |
| C:\VMIX> PATH = C:\;C:\VMIX; (all your apps .EXE paths here) |
| |
| C:\VMIX> VM_BOOT egacur/set re -x/set vi -s/set sys -c/vw |
| |
| |
| Configuration explanation: |
| |
| Before you start VMiX, set your DOS path for all the antici- |
| pated executables you wish to multitask. |
| |
| 'egacur' Optional, makes sure the cursor displays OK. |
| |
| 'set re -x' NO multiusers at your COMM ports, disables |
| remote logins, so as not to interfere with |
| what you already have connected at the ports. |
| |
| If you want multiusers, delete this command. |
| |
| 'set vi -s' Display a status line, so you can determine the|
| name of the foreground task (where the kbd is).|
| |
| 'set sys -c' Enable a software cursor, so you can see where |
| you are, even if another task disables the |
| hardware cursor or your task has gone to sleep.|
| |
| 'vw' Run the Pull-Down Menu shell, from where to |
| start other VMiX DOS shells. With VW, you will|
| usually start a new shell, from where to start |
| your multitasking application (or you can |
| launch your applications directly). |
| |
| |
| ALTERNATE STARTUP: USING VSETUP AND VMiX.INI: |
| |
| VMiX.INI is a text script file that is processed by the |
| utility VSETUP.EXE |
| |
| Edit the above configuration commands into your VMiX.INI |
| file: |
| |
| [startup] |
| set re -x/set vi -s/set sys -c |
| do -W /set process -d5/vw |
| |
| |
| C:\VMIX> PATH = C:\;C:\VMIX; (all your apps .EXE paths here) |
| |
| C:\VMIX> VM_BOOT egacur/vsetup |
|_______________________________________________________________|
_______________________________________________________________
| |
| THE ADVANCED WAY TO START VMiX (Command line multitasker) |
| ------------------------------ |
| |
| C:\VMIX> PATH = C:\;C:\VMIX; (all your apps .EXE paths here) |
| |
| C:\VMIX> VM_BOOT egacur/set sys -c |
| |
| |
| Configuration explanation: |
| |
| Before you start VMiX, set your DOS path for all the antici- |
| pated executables you wish to multitask. |
| |
| 'egacur' Optional, makes sure the cursor displays OK. |
| 'set sys -c' Enable a software cursor, so you can see where |
| you are, even if another tasks disables the |
| hardware cursor or your task has gone to sleep.|
| |
| After VMiX starts, you would use the 'set remote -l ????', |
| 'set baud -c ????' and maybe 'set terminal -t ???? to con- |
| figure logins via the COMM ports. These commands could |
| also have been added to the startup line above or could have|
| been edited into your copy of the VMiX.INI file. The system|
| defaults are COM1 (9600 Baud) for the remote link and ANSI/ |
| VT-100 terminal emulation. |
| |
| To start multitasking applications, you will normally use |
| the 'do [-W]' command or you can press Shift-Enter after a |
| command, to start it multitasking. |
|_______________________________________________________________|
_______________________________________________________________
| |
| USING YOUR COMM PORTS for remote user logins |
| --------------------- |
| ----- if your printer, mouse, or modem is on COM1, |
| then COM2 is available for user logins: |
| (NOTE the lower case 'L', below) |
| |
| C> VM_BOOT set remote -l2 / (etc.) |
| |
| ----- if your printer, mouse, or modem is on COM2, |
| then COM1 (VMiX default) is available for logins: |
| |
| NO COMMAND NEEDED |
| |
| ----- if you are using both COM1 and COM2, |
| then set VMiX to COM3 to avoid interferance: |
| (NOTE the lower case 'L', below) |
| |
| C> VM_BOOT set remote -l3 / (etc.) |
| |
| or, to globaly disable all login polling use: |
| |
| C> VM_BOOT set remote -x / (etc.) |
| |
| ----- if you are connecting at a baud rate other than |
| 9600 baud (VMiX default), set the baud with: |
| |
| C> VM_BOOT set remote -l2/set baud -c2 2400/ (etc.) |
|_______________________________________________________________|
_______________________________________________________________
| Cont'd |
| ------ |
| |
| VMiX supports interrupt driven serial I/O up to |
| 115,200 Baud. For information on these and the |
| 'set baud -c' command see TECHREF.DOC |
| |
| ----- if you want to enable passwords and have entered |
| them into your VMiX.INI file, as well as specified |
| 'rshell' or the name of your autostart program(s) |
| to run after a valid logon: |
| |
| C> VM_BOOT set remote -l2 vsetup / |
| set baud -c2 2400 / (etc.) <ENTER> |
|_______________________________________________________________|
_______________________________________________________________
| |
| MULTIUSER CABLING |
| |
| The RS232 cabling for COM1 or other terminal/modem serial |
| ports where you intend to have VMiX loggins, should be cons- |
| tructed depending on whether the host PC will be connected |
| to a dumb terminal or to another PC acting as a terminal. |
| |
| A NULL MODEM serial cable can also be used when connecting to |
| a second PC, but will not work when connecting to a terminal. |
| |
| |
| PIN PIN |
| |
| H 1 1 |
| O |
| S 2 -- - _ _ _ - -- 2 |
| T -_ __ - - |
| 3 __ _ - - - - _ __ 3 T |
| S E |
| e 4 4 R |
| r M |
| i .--5 5 I |
| a .-| N |
| l | `--6 6 A |
| | L |
| P | 7 ------------------------- 7 |
| o | Also add the jumpers |
| r | .--8 8 to the terminal side,|
| t `-| if using a 2nd PC as |
| `--20 20 a terminal. |
| |
| |
| |
| |
| See Part II, Using VMiX 386, for |
| detailed instructions regarding the |
| use of VMiX 386 commands and options. |
|_______________________________________________________________|
_______________________________________________________________
| |
| VMiX STARTUP SYSTEM OPTIONS |
| |
| The boot command syntax is: |
| |
| VM_BOOT [8086] [286] [low] [high] [text] [ems=] [exclude=] |
| [vsetup] [egacursor] [cgacursor] |
| [ / [ command ] /... ] |
| |
| where (NOTE abbreviated syntax): |
| |
| 8086 option forces 8086 (real mode) operation on |
| 80286/386/486 computers. |
| |
| 286 option forces 80286 (standard/protected mode) |
| operation on 386/486 computers. |
| |
| The two commands above manually disable 80386 enhanced |
| protected mode operations (useful for getting around |
| compatibility problems, on certain computers). |
| |
| lo option inhibits the relocation of VMiX code/data |
| to extended XMS memory. |
| |
| hi option forces the relocation of VMiX code/data to |
| extended XMS memory, when using 8086 Mode on a |
| 80286/386/486 computer. |
| |
| text option disables the loading of graphics fonts in |
| 8086 Mode to save usable memory. |
| |
| ems= option allows an EMS segment to be specified for |
| VMiX own data use. On 386 computers, this is not |
| needed since VMiX automatically relocates data |
| areas to its own EMS and XMS managed areas. |
| However, VMiX could select the wrong EMS segment, |
| after scanning for ROMs or RAM in upper memory, |
| and crash. |
| |
| This option allows a safe upper memory segment to |
| be manually selected (38Kb free size is required).|
| |
| (ems=ffff, totally disables VMiX use of the upper |
| memory EMS area.) |
| |
| On 8086 PCs or 286 ATs, if an EMS board is |
| installed and an EMS manager is driver is present,|
| VMiX can use EMS to reduce its low memory size |
| by 38Kb. |
| |
| The general command format is 'EMS=????', |
| where ???? is the Hex Segment Address of the EMS |
| area (i.e., VM_BOOT ems=d000), 38Kb of contiguous |
| space is required. On 386 ATs, VMiX automatically|
| uses its own EMS emulator unless you specify |
| ems=ffff. |
| |
|_______________________________________________________________|
_______________________________________________________________
| Cont'd |
| ------ |
| |
| vsetup option will start VMiX under the control of the |
| VMiX.INI configuration file. Note that vsetup |
| is really a program that VMiX executes first to |
| process the configuration commands in the .ini |
| file. |
| |
| exc= option allows the user to exclude a block of |
| extended memory, starting after the first megabyte|
| of conventional memory, by specifying a size in |
| kilobytes to skip. This excluded area will not be|
| touched by VMiX. |
| |
| The general command format is 'EXC=????', |
| where ???? specifies the number of 1Kb blocks of |
| extended memory to exclude. |
| |
| If VMiX detects a resident XMS memory manager like|
| HIMEM.SYS, it will automatically exclude memory |
| that is already in use. |
| |
| egacur option corrects a video BIOS bug that fails to |
| indicate that CGA cursor emulation is disabled. |
| |
| cgacur option corrects a video BIOS bug that fails to |
| indicate that CGA cursor emulation is enabled. |
| |
| [ command ] any valid DOS or VMiX shell command, |
| separated by a '/' |
| |
| |
| NOTE: Some EGA/VGA's will display what appears to be a |
| broken VMiX cursor when Shift-Tab is pressed to |
| switch tasks. To correct this, start VMiX with |
| the command line 'VM_BOOT egacur'. |
|_______________________________________________________________|
_______________________________________________________________
| |
| QUICK START TO VMiX MULTITASKING |
| |
| The TECHREF.DOC manual is big and spread out, but it |
| describes each VMiX command in more detail. |
| |
| Basically, these are the commands that you must master |
| FIRST, to start using the multitasking features right- |
| away. |
| |
| |
| ? Pressing '?' will display a list of avail- |
| able VMiX commands. Typing a VMiX command |
| that requires additional parameters, will |
| display usage information. Any command can |
| be abbreviated to 2 or more characters. |
| |
| |
| exec This command allows you to partition the |
| use of your PC's memory between tasks. |
| By default, on 8088 and 80286 computers, |
| VMiX partitions each new DOS task into |
| 224Kb chunks of available memory. On the |
| 80386 the default partition size is 576Kb. |
| |
| To override the defaults, you might type: |
| exec -m128 |
| |
| this sets the partition size to 128Kb. |
| Any new program, after that, will only see |
| a maximum of 128Kb available, until the next|
| 'exec -m' reduces or expands the current |
| limit. |
| |
| In 80386 processors, selecting a partition |
| size smaller than the 600Kb default, will |
| cause new tasks to use the parent's memory |
| partition and will not be mapped to their |
| own 640Kb, from the extended memory pool. |
| |
| |
| do This command allows you to specify a new |
| DOS task. 'do' is short for 'dosjob'. |
| To execute BASIC in a window, you would |
| type: |
| do c:\basic |
| |
| The 'dosjob' command can be omited, if you |
| press Shift-Enter, instead of just 'Enter' |
| after the command. |
| c:\basic (press Shift-Enter) |
| |
| 'do' is the basic VMiX command to start a |
| new and separate process. A forward slash |
| '/' must preceed any VMiX shell command |
| given after the 'do'. The '/' must NOT be |
| used, if the command is for DOS. |
|_______________________________________________________________|
_______________________________________________________________
| Cont'd |
| ------ |
| |
| do -W To execute BASIC and give it the full |
| screen, you would type: |
| do -W c:\basic |
| |
| The keyboard shortcut is to press Shift- |
| Enter (with both Shift keys pressed, for |
| full screen) instead of just 'Enter'. |
| |
| c:\basic (press Shift-Shift-Enter) |
| |
| On the 386/486 the -W switch virtualizes |
| the video segment of the task, allowing it |
| to be moved to and from the foreground |
| without disturbing the display of other |
| tasks. |
| |
| On 8088 or 286 systems you must specify a |
| new video page or video mode to obtain |
| a virtualized and separate console for the |
| task: |
| do -W / set video -p / filespec |
| or, |
| do -W / set video -m / filespec |
| |
| |
| Shift-Enter This is equivalent to the 'do' command. |
| You press Shift-Enter at the end of a |
| command to multitask it in a new window. |
| |
| Shift-Shift-Enter This is equivalent to the 'do -W' |
| command. You press Enter with both Shift |
| keys held down at the end of a command to |
| multitask it with a new full screen. |
| |
| Shift-TAB Once you have started several windows, or |
| full screen tasks, you will need to move |
| the keyboard and/or video display between |
| them, so that input to each task can be |
| safely directed to only that task. You |
| move the keyboard and foreground display, |
| in round-robin fasion by pressing the |
| <SHIFT> and <TAB> keys simultaneously. |
| Shift-Tab will also clear any defunct |
| window partitions, when there is only one |
| shell active. |
| |
| Some tasks disable the cursor blinking, so |
| its difficult to determine which task is |
| actively receiving input. In those cases, |
| you should enable cursor emulation with: |
| set system -c |
|_______________________________________________________________|
_______________________________________________________________
| Cont'd |
| ------ |
| |
| and/or enable the console status line with: |
| set video -s |
| |
| do /rshell To clone the VMiX command shell into a 2nd |
| shell, you type: |
| do /rshell or do -W /rshell |
| |
| The / tells VMiX this is not a command for |
| DOS but for VMiX. VMiX will ask you for |
| a login name. This is the name that the |
| VMiX status line will display when this task|
| is at the foreground for kbd input, type: |
| su |
| |
| This is a reserved name for a VMiX operator |
| with 'kill' and 'swap' process priviledges. |
| |
| do . To clone a DOS command shell as the 2nd |
| window, you would type: |
| do . |
| or, |
| . (and press Shift-Enter) |
| |
| To close the window, type from DOS: |
| exit |
| |
| NOTE THAT THE VMiX SHELL PROMPT DIFFERS |
| FROM THE DOS SHELL PROMPT IN THE SINGLE |
| SPACE THAT FOLLOWS THE PROMPT. |
| |
| From the VMiX Shell |
| a directory request would look like: |
| C> dir |
| From DOS it would look like: |
| C>dir |
| |
| $$ When not in 386 Mode, you might find that |
| some programs might crash or fail to execute|
| correctly. To provide system protection, |
| where changes effected by one task to the |
| system interrupt table might interfere with |
| the interrupts handlers expected by a second|
| task, precede the filename and path with the|
| characters '$$': |
| $$[drive:][path]filename |
| or, |
| do $$[drive:][path]filename |
| |
| |
| set The 'set' command gives you access to all |
| the VMiX configuration options. |
| To display a list of all the commands and |
| arguments associated with the 'set' command |
| enter 'set' from the keyboard. |
| |
| |
|_______________________________________________________________|
_______________________________________________________________
| Cont'd |
| ------ |
| |
| NOW THAT YOU KNOW EVERYTHING, YOU CAN CHOOSE TO FORGET |
| ALL ABOUT IT AND INSTEAD, USE THE VMiX PULL-DOWN MENUS |
| BY TYPING, AFTER VMiX STARTS: |
| |
| C> c:\vmix\vw |
| |
| See the INSTRUCTIONS section below, for VW user |
| information. |
| |
| VW requires your PATH to include the directory where |
| the VMiX utilities reside. |
| |
| REMEMBER THAT ANY COMMAND YOU CAN GIVE FROM INSIDE VMiX |
| CAN ALSO BE STATED IN THE VM_BOOT COMMAND LINE OR INCLUDED|
| IN THE [startup] SECTION OF YOUR VMiX.INI FILE. |
| |
| Congratulations, you are now a certified VMiX SysOp. |
|_______________________________________________________________|
_______________________________________________________________
| |
| APPLICATION NOTE: Using the BRIEF EDITOR |
| ---------------------------------------- |
| |
| NOTE for Brief Editor users: if running Brief from a |
| remote ANSI terminal session, start the editor with the |
| -p flag in the command line, to force Brief to only use |
| the first video page. |
|_______________________________________________________________|
_______________________________________________________________
| |
| APPLICATION NOTE: Using COMMUNICATIONS or BBS SOFTWARE |
| ------------------------------------------------------ |
| |
| NOTE if you intend to run drivers that use IRQ2 or |
| IRQ5, like a network or bisynch communications card: |
| load the software (i.e., IPX and NET5 for Novell) BEFORE |
| VMiX is loaded. This will be fixed in a future version. |
| |
| Communications programs that use IRQ3 or IRQ4 will work |
| correctly regardless of when they are loaded. |
| |
| IF THE PROGRAM OR DRIVER PORTION THAT USES COMM PORTS IS |
| IS INSTALLED BEFORE VMiX, YOU DO NOT NEED TO GIVE VMiX |
| ANY SPECIAL COMMANDS. |
| |
| IF THE PROGRAM OR DRIVER PORTION THAT USES COMM PORTS IS |
| IS EXECUTED AFTER VMiX, YOU NEED TO ISSUE THE VMiX |
| COMMAND 'set remote -i' ONCE, ANY TIME BEFORE EXECUTING |
| YOUR PROGRAM. |
| |
| NOTE if you are running a BBS communications fossil: |
| OpusComm Version 5.30+ works the best. |
| |
| X00.SYS also works, but whereas file downloads do not |
| loose any data, there seems to be characters lost at |
| the callers BBS screen (uses different fossil call). |
| |
| BNU does not loose screen characters or file transfer |
| data, but seems to hang when other tasks are running. |
| BNU Version 1.70 is available from our BBS. |
| |
| NOTE if you are running Binkley Version 2.55+: |
| you must leave some extended memory free for Binkley. |
| Start VMiX with the command line VM_BOOT exclude=500, |
| to exclude 500 Kbytes from VMiX's pool for Binkley. |
|_______________________________________________________________|
_______________________________________________________________
| |
| IMPORTANT NOTICE |
| |
| VMiX STARTUP PROBLEMS: |
| |
| We have found that the following are the most frequent |
| causes of VMiX 386 failure. |
| |
| a) System locks after starting a second window or after |
| logging from a remote terminal, and the screen needs |
| to scroll: |
| |
| You might be using an ANSI.SYS driver in CONFIG.SYS |
| that does not support multiple windows or is otherwise |
| incompatible with VMiX. We provide VMANSI.COM, a TSR |
| that can be executed before VMiX, to install an ANSI |
| driver. This driver does not currently support |
| keyboard redefinition. You can also use Quarterdeck |
| Office System's DVANSI.COM (for DESQview) with VMiX. |
| |
| b) The screen is cleared during VMiX bootup and System |
| hangs, or VMiX displays the Warning Message "8086 Mode |
| another 386 PM detected" and then locks: |
| |
| The contents of your CONFIG.SYS specify a device |
| driver that uses extended memory in conflict with |
| VMiX in 386 Mode. (for example, QEMM.SYS, 386MAX.SYS, |
| EMM386.SYS, or SMARTDRV.SYS) |
| |
| c) VMiX slows down to a crawl or just hangs: |
| |
| Failure to reassign VMiX's default port for user |
| logins, COM1, to another port number, when that port |
| is already in use (modem, mouse, etc.). Recommend to |
| start VMiX with a non-existent port for user logins: |
| (NOTE the lower case 'L', below) |
| |
| VM_BOOT set remote -l4 (ie., COM4) |
| |
| d) System fails to boot completely, crashing before |
| giving you a prompt: |
| |
| In 386 Mode, VMiX incorrectly maps your ROM and high |
| DOS memory usage. VMiX loads portions of itself to |
| the first available area between C000 and F000. It is |
| possible for VMiX to erroneously identify an area in |
| use, as being free. In that case, VMiX will fail to |
| boot. Force VMiX to use a known free area with the |
| startup command: |
| |
| VM_BOOT ems=D000 (ie., if D000 is free) |
| or, |
| VM_BOOT ems=FFFF (ie., do not use EMS) |
| |
| e) Using 'swap' with a previously loaded external program |
| or TSR that uses extended memory, when VMiX is in 286 |
| Mode and has not been told to reserve extended memory |
| already in use, at boot time: |
| |
| VM_BOOT exclude=500 |
| |
| If 500Kb are already in use. |
|_______________________________________________________________|
_______________________________________________________________
| |
| f) System fails to boot and the screen stays blank: |
| |
| Cable connected to COM1 port which causes VMiX port |
| test to hang during startup. Recommend to test VMiX |
| with the serial cable disconnected during the VM_BOOT |
| process. Make a new cable as described above or use |
| a null modem cable. |
| |
| g) Using VMiX with DOS 4.01 on some 386 computers will |
| boot OK, but multitasking will be erratic or lock the |
| System. Try the retail version of DOS 4.01 or switch |
| to Version 5.0, if possible. |
| |
| h) System or application hangs while running a communica- |
| tions program: |
| |
| Some communications program like ProComm or Telix, |
| that install their own COMM port interrupt routines |
| AFTER VMiX is booted, require that you issue the |
| command 'set remote -i' before running the application.|
| The command is a toggle, so it is usually only used |
| once, at bootup. |
| |
| i) Cannot run a second application or System locks: |
| |
| Some 386 CPU's (particularly SX's) cannot virtually |
| page the first 4Kb of memory. If VMiX will not run |
| a second task, this might be the case. To get around |
| this problem, use the command 'set dos -s0' to tell |
| VMiX not to page any low memory segments. |
| |
| j) Cannot login and get not response at a terminal: |
| |
| Your cable might be incompatible (See 'Multitasking |
| Cabling', above). To test your cable, from DOS type |
| the following commands (assuming COM1): |
| |
| mode com1: 9600,n,8,1 <ENTER> |
| mode lpt1:=com1 <ENTER> |
| |
| then, press <Ctrl><P> to echo the screen to COM1 and |
| do a DIR. If the screen hangs, then the cable is not |
| responding correctly. |
| |
|_______________________________________________________________|
_______________________________________________________________
| |
| k) The following vendor's 386 computers are known to |
| crash (incompatible) or not crash (compatible) VMiX |
| during 386 protected mode startup: |
| |
| Incompatible Compatible |
| ---------------- ------------------- |
| CompuAdd 386 ACER 386/486 |
| HP Vectra 386 ALR VEISA 486/33 |
| IBM PS/2 30 ALR MPS 386/33 |
| IBM PS/2 50 ALR PowerFlex 386/486 SX |
| Opti 386 SX AST BRAVO 386/486 |
| Zenith 386 AST Premium 386/486 |
| AT&T 386 |
| Cheetah cAT 386/20 |
| Cheetah Gold 486 |
| COMPAQ 386/25 |
| COMPAQ 386/SX |
| COMPAQ 486/33 |
| COMPAQ Deskpro |
| COMPAQ LTE |
| COMPAQ SystemPro |
| Dell System 310 |
| Dell System 486 |
| DTK 386 |
| Epson Equity |
| Everex 386/16 |
| Everex Step 386/25 |
| Everex Tempo 486/20 |
| Gateway 2000 386/20 |
| IBM PS/2 60/70/80 |
| Micronics 386 |
| Monolithic 386/16 |
| Northgate 386 |
| Olivetti M386/20 |
| PC Brand 386/33 |
| Tandy 5000MC |
| Toshiba 5100 |
| ZEOS 386/486 |
|_______________________________________________________________|
_______________________________________________________________
| |
| SHIPPING LIST |
| |
| The VMiX 386 System consists of the 39 files described below. |
| |
| These files reside in the four self-extracting archives: |
| |
| VMIX???.EXE (Shareware distribution VERSION ???) |
| VMIX386.EXE (Shareware, only for 386/486 computers) |
| Available from our BBS |
| VMIX386.EXE (Registered Owners ONLY) |
| VMIXUTL.EXE (Registered Owners ONLY) |
| FOR8086.EXE (Registered Owners ONLY) |
| |
| |
| EXECUTABLE or OBJECT FILES |
| |
| - VM_BOOT.EXE - |
| The VMiX startup program. |
| To start, type VM_BOOT from DOS's C> prompt and press |
| <ENTER>. |
| |
| - DPATH.EXE - |
| Utility executed by user to set the directory search PATH |
| for data files (not usually needed, since VMiX now vir- |
| tualizes the default directory of each task). |
| |
| Use DOS's 'PATH =' or 'SET PATH =' for executables. |
| Use VMiX's 'DPATH =' or 'SET DPATH =' for data files. |
| |
| - DSTAT.EXE - |
| Utility executed by user to view device and channel |
| status. |
| |
| - LOADUP.EXE - |
| Utility to load TSRs, from inside VMiX, to upper memory |
| above 640Kb. Will also relocate VMiX to upper memory. |
| |
| - MONITOR.EXE - |
| Debugging utility used to monitor process information, |
| system memory and open files status. |
| |
| - OUTSIDE.EXE - |
| DOS shell spawning utility for sysops running BBS |
| software under VMiX. This utility can be used by a bbs |
| caller to exit via the modem to a VMiX shell. |
| The syntax is: |
| outside.exe [-c ????] |
| where ???? is the COMM port (default is COM1) |
| |
| - PS.EXE - |
| Utility executed by user to view process status. |
| |
| - VMANSI.COM - |
| Utility executed before VMiX to install an ANSI console. |
| A multitasking compatible alternative to ANSI.SYS |
|_______________________________________________________________|
_______________________________________________________________
| Cont'd |
| ------ |
| |
| - VSETUP.EXE - |
| Utility executed at startup to process the VMiX |
| configuration file, VMiX.INI |
| |
| - VT.EXE - |
| Utility executed by user to start a remote session at a |
| second, serialy connected, VMiX host. |
| |
| - VW.EXE - |
| Utility executed by user to start the pull-down menus |
| interface to the VMiX shell. |
| |
| - VMiX.INI - |
| Sample VMiX configuration file (editable text file) |
| |
| - SYSGATE.OBJ - |
| Link object file for accessing the VMiX API (Application |
| Programming Interface). |
|_______________________________________________________________|
_______________________________________________________________
| |
| SOURCE FILES DOCUMENTATION FILES |
| |
| DPATH.ASM DPATH.DOC |
| LOADER.ASM READ.ME |
| SYSGATE.ASM VMiX.DOC (this file) |
| VMANSI.ASM REVISION.LOG (upgrade history) |
| VT.ASM TECHREF.DOC |
| DSTAT.C |
| LOADUP.A |
| LOADUP.C |
| MONITOR.C |
| OUTSIDE.C |
| PS.C |
| VSETUP.C |
| VW.C |
| C_BIOS.H |
| $_CONFIG.H |
| $_KERNEL.H |
| $_MEM.H |
| $_PROC.H |
| IO_CHAN.H |
| IO_IRP.H |
| IO_OBJ.H |
|_______________________________________________________________|
VMiX COMMAND LOOK-UP - QUICK REFERENCE
|ROOT |DEBUG....................................|
|LEVEL..|LEVEL..|LEVEL............................|
| 0 | 1 | 2 |
|_______._______._________________________________|
| . . |
|[debug]. . |
| |set . |
| . |baud |
| . . -c " sets COMM port: chan, |
| . . baud, parity, word, stop"|
| . |dos |
| . . -f " toggles DOS process file |
| . . inherit ON/OFF" |
| . . -n " sets DOS INT21 function |
| . . maximum nesting level" |
| . . -p " sets DOS current process |
| . . PSP: nuPSP(seg)" |
| . . -s " sets DOS virtual size: |
| . . (4Kb blocks)" |
| . |font |
| . . -t " sets font type (0 - 3)" |
| . |pool |
| . . -a " adjusts program memory: |
| . . MCB(seg), nusize(para)" |
| . . -m " sets program partition |
| . . size (0 - 1024Kb)" |
| . . -o " sets program memory |
| . . owner: MCB(seg), |
| . . nuPSP(seg)" |
| . |process |
| . . -b " sets shell buffer size |
| . . (0 - 127)" |
| . . -d " sets process wait: |
| . . seconds |
| . . -e " toggles environment |
| . . protection ON/OFF" |
| . . -h " toggles hardware |
| . . priviledge ON/OFF" |
| . . -s " toggles system |
| . . priviledge ON/OFF" |
| . . -t " sets duration of process |
| . . time slice: ticks - 1" |
| . . -w " sets I/O wait before |
| . . preemption" |
| . |remote |
| . . -a " toggles polling of all |
| . . channels ON/OFF" |
| . . -c " sets remote console |
| . . channel" |
| . . -i " toggles fast RS232 |
| . . ON/OFF" |
| . . -l " sets terminal login |
| . . channel" |
| . . -x " toggles terminal logins |
| . . ON/OFF" |
| . |system |
| . . -c " toggles cursor emulation |
| . . ON/OFF |
| . . -d " sets frequency of |
| . . scheduler time slice: |
| . . ticks - 1" |
| . . -m " toggles operator |
| . . messages ON/OFF" |
| . . -s " toggles swapper ON/OFF |
| . . -t " toggles scheduler ON/OFF |
| . . -v " toggles maximum DOS size |
| . . ON/OFF" |
| . . -w " sets shutdown wait delay:|
| . . seconds" |
| . |terminal |
| . . -t " sets terminal type (0-9) |
| . |video |
| . . -c " sets video bg/fg colors" |
| . . -C " sets window bg/fg colors"|
| . . -m " sets video mode (0 - 18)"|
| . . -p " sets vide0 page (0 - 3)" |
| . . -s " toggles status display |
| . . ON/OFF" |
| . . -w " sets window size: |
| . . row0, col0, row1, col1" |
| . . -W " auto partitions task |
| . . windows (Shift-Tab moves |
| . . kbd between windows)" |
| |init |
| . |comm |
| . . -c " sets COMM port: chan, |
| . . baud, parity, word, stop"|
| . |print |
| . . -p " inits parallel port:chan"|
| . |clock " resets the VMiX system |
| . timer 11msec clock" |
| |examine |
| . |mcb |
| . |memory |
| . . " : seg[:offset] [= byte]" |
| . |status |
| |assign |
| . " :[process id], obj type, channel"|
| . |gdt |
| |deassign |
| . " : channel" |
| . |gdt |
| . |memory |
| |quit |
|rshell |
|remote |
| -a " toggles global polling ON/OFF" |
| -c " sets remote console channel: channel id" |
| -i " toggles fast RS232 ON/OFF" |
| -l " sets terminal login channel: channel id" |
| -x " toggles terminal logins ON/OFF" |
|swap |
| " : process id" |
|chprio |
| " : process id, new priority" |
|[exec] |
| -a " adjusts program memory: MCB(seg), |
| nusize(para)" |
| -m " sets program partition size (0 - 1024Kb)"|
| -o " sets program memory owner: MCB(seg), |
| nuPSP(seg)" |
| |path " utility displays/sets |
| . program file search path"|
| |dpath[.exe] " utility displays/sets |
| . data file search path" |
| . -v " sets verbose mode (default)" |
| . -q " sets quiet mode" |
| . -r " allows data read only" |
| . -w " allows data read/write (default)"|
| . -h " help" |
| |dstat[.exe] " utility displays all |
| . VMiX objects/channels" |
| . -a " selects only assigned objects" |
| . -r " selects only free objects" |
| |loadup.[exe] " VMiX loadhi utility to |
| . place TSRs above 640Kb" |
| . [/seg=] " forces load to specified |
| . segment" |
| . [/size=] " specifies size for upper |
| . memory block in Kbytes" |
| . [/help] " displays help" |
| . " : filespec" |
| |monitor[.exe] " utility monitors process |
| . or system: process id" |
| . -f " monitors all open files" |
| . -m " displays 1 megabyte memory map" |
| . -p " displays VMiX memory pool info" |
| . -r " monitors process registers and |
| . system memory: process id" |
| |ps[.exe] " utility displays all |
| . processes status" |
| |vmansi[.com] " utility to install an |
| . ANSI video driver" |
| |vsetup[.exe] " utility to process |
| . VMiX.INI file" |
| |vt[.exe] " utility to login to a |
| . remote VMiX host" |
| |vw[.exe] " VMiX pull-down menus |
| . utility" |
| . -i " interactive keyboard mode" |
| . -m " LCD or BW monochrome mode" |
| " : MS-DOS command" |
|dosjob |
| " : MS-DOS command or / VMiX command" |
| [-W] " gives process the full screen: MS-DOS |
| command or / VMiX command" |
|spawn |
| -c " sets channel for STDIO and executes |
| command line: channel id / command line" |
|kill |
| " : process id" |
|quit |
|_________________________________________________|
KEY:
___
: arguments after a ':' indicate command data that follows
[ ] keywords enclosed in '[ ]' indicate optional parameters
VMiX TERMINAL - IBM FUNCTION KEY EMULATION
_________________________________________________
| |
| Press ^F (1 beep) PC Keyboard emulation ON |
| Press ^F again (2 beeps) emulation OFF |
| |
| |
| for press |
| |
| IBM PC KEY TERMINAL KEY |
| |
| [F1] 1 |
| [F2] 2 |
| [F3] 3 |
| [F4] 4 |
| [F5] 5 |
| [F6] 6 |
| [F7] 7 |
| [F8] 8 |
| [F9] 9 |
| [F10] 10 |
| |
| <Ctrl>[Break] ^C |
| <Ctrl>[NumLock] ^S |
| <Ctrl>[F3] ~ |
| [PgUp] + |
| [PgDn] - |
| [Ins] ^I |
| [Del] ^D |
| [End] ^E |
| [UP] ^J see note|
| [DOWN] ^K see note|
| [LEFT] ^H see note|
| [RIGHT] ^L see note|
| [Home] [Home] |
| <Alt> <Shift> |
| |
| |
| |
| NOTE: The <Ctrl> key symbol for the terminal |
| keyboard has been abbreviated as ^ |
| |
| ^F (1 beep) enables the Keypad ARROWS to work |
| directly, when in VT-100 terminal emulation. |
|_________________________________________________|
----------------------------------------------------------------------------
RELEASE NOTES
_____________
* See the REVISION.LOG file for enhancements and bug fixes to this version.
In Summary Version 2.78 is an update release and provides:
1. Added context sensitive interrupt processing to the kernel.
This is a new capability.
You can now run a communications program in one 386 Mode partition
and something else in another, while conducting a download or other
communications.
Note: Communications programs are very sensitive to disk I/O by
other tasks, this may interfere with high baud rate links !!!
To enable context sensitive interrupts, you should invoke the command
'set remote -i' if the baud rate is lower then 19.2 KBaud, to toggle
ON special interrupt servicing. If you use the 'set baud -c ....',
to set a Baud rate above 9600, then context sensitive communications
are automatically enabled.
IF YOU INTEND TO RUN COMMUNICATIONS PROGRAMS, start VMiX with the
options given below (you do NOT want VMiX to poll for user logins at
a COMM port that an application intends to use for communications):
C:\VMiX> VM_BOOT set remote -x/set remote -i (disable all COMM logins)
or,
C:\VMiX> VM_BOOT set remote -l4/set remote -i (logins only on COM4)
or,
C:\VMiX> VM_BOOT set remote -i (logins only on COM1, default)
Other VMiX commands for optimizing communications:
'chprio' - to increase the priority of a COMM program.
Start a new task with 'do -W /rshell', login and
then enter 'chprio . 15' to set a priority (in the
range 2 - 31) of 15. Finally, start the program.
(the default priority is normally 7)
'set process -t????' - where ???? is the time (count - 1) a task
will own the CPU in hundreds of a second.
(default = 0 or 1/100 sec.)
'set system -t????' - where ???? is the time (count - 1) before
the scheduler will run again in hundreds of
a second. (default = 0 or 1/100 sec.)
2. Programs that make direct video writes are supported at remote COMM
port terminals (remote logins). All video memory accesses will
be redirected to the COMM port and will not appear at the console.
(Feature available only in 386/486 computers).
Remote ANSI users will now be able to get color screen displays from
applications running in the host, but being displayed remotely.
Fixed a bug that resulted in sudden scrolling of the remote display
screen.
Color support slows the screen display somewhat. If you want the
speed but not the color, select VMiX VT-100 emulation with the command
'set terminal -t4' and leave the remote terminal set for ANSI emulation.
YOU DO NOT NEED AN ANSI.SYS DRIVER IN YOUR CONFIG.SYS FILE TO USE
THE VMiX REMOTE ANSI SUPPORT. IT IS BUILT INTO THE VMiX SYSTEM, AS
WELL AS THE OTHER TERMINAL EMULATIONS SUPPORTED.
Remote logins will now work at the high (interrupt driven) baud rates
above 9600 KBaud. High baud rates are set for a given channel, just
as the standard rates, with the 'set baud -c ???? <baud rate>' or with
'init comm -c ???? <baud rate>'. Available baud rates are: 300, 1200,
2400, 4800, 9600, 19200, 38400, and 115200. The VMiX utility DSTAT.EXE
will display the baud rate settings for all channels assigned to
COMM ports.
You can only set one COMM port at a time to use interrupt driven baud
rates above 9600 for logins, other COMM ports handling simultaneous
remote logins must be configured for 9600 Baud or below. Note that
this restriction applies only to remote logins. You can, however,
have a program that uses a second port, while a user is logged in at
a high baud rate.
The 'set remote -a' command allows all COMM port to be polled
simultaneously for NEW login requests. This command slows down the
scheduler. The default and preferred method is 'set remote -l ????'
(to poll a specific free COMM port, at a time). Once a user has
successfully logged in, you can change the polled port to another free
port. This method offers less overhead. Also, other COMM port devices
might be connected that could trigger fake logins during global polling
(ie., modems, mice, or printers).
Logins can be globally enabled/disabled with the 'set remote -x' command
toggle. The default is logins enabled.
The 'set remote -l' command controls the COMM port where user logins
are polled for (when 'set remote -a' is in effect and VMiX is polling
all ports, this command has no effect). However, this command is
always used to set the port that a VT session will use to connect to
a remote VMiX host. The 'set remote -l' command is also used to
specify a program to execute (USUALLY VSETUP.EXE) after a connection
is established at one of the COMM ports.
The 'set remote -c' commands RELOCATES the operator console that the
VM_BOOT program used during startup to the remote channel specified.
That means the old console device (where the initial task is always
running) is disabled and relocated to the specified channel. You can
use the 'assign process' command to move it back to the original console
device (See TECHREF.DOC). Pressing <Ctrl><F>, followed by <Ctrl><Z>
will also return the Root process back to the startup console, but is
not as clean as the 'assign' command.
3. VMiX supports the MSDOS, DRDOS, and XDOS operating systems.
DRDOS does not pass our full stress test, but seems to work much
better than before. Because of differences between DRDOS and MSDOS,
it is not possible for VMiX to display a prompt showing the current
default directory when using DRDOS.
Specifically, the architecture of DRDOS does not allow different tasks
to have different default directories. This will cause problems if you
set different default directories for different VMiX partitions. The
only way around this is to set an all inclusive PATH statement before
starting VMiX (and also set an identical path for data files using the
VMiX utility DPATH, after startup).
You can load DOS to high memory (along with its BUFFERS) using the
dos=high and device=himem.sys (hidos=on and device=hidos.sys for DRDOS)
commands in CONFIG.SYS. You can experiment with memory utilization
by removing dos=high, and letting VMiX use the high memory for itself.
The net application space remaining should be about the same.
4. The LOADUP.EXE utility allows users to move VMiX or TSRs to upper
memory (386 MODE IS REQUIRED). The TSR will be visible only to the
process that started it, since each VMiX task is virtually mapped to
a separate virtual first megabyte. This means that you can have
different (or the same) TSRs active for each partition.
LOADUP will NOT load TSR's on 8086 or 286 computers, unless upper
memory is already provided by EMS hardware or other EMS software.
VMiX is compatible with XMS drivers, like HIMEM.SYS and HIDOS.SYS.
However, VMiX will not work with other 80386 virtual memory managers,
like QEMM.SYS, WIN.COM, 386MAX.SYS, or EMM386.SYS and defaults to
8086 Mode when it detects them.
Since you can not use another extended memory manager when using
VMiX, the LOADUP utility has been provided to move TSRs or VMiX itself
to upper memory. Since VMiX is not running at CONFIG.SYS time, there
is still no way to do the same thing with device drivers, but we are
working on it.
LOADUP is not yet as smart as other LOADHI programs,
The command syntax is:
LOADUP [/help] [/segment=] [/size=] filespec
We recommend that you do the first TSR load with /size=128 (number of
1Kb blocks) and reduce the size if LOADUP reports memory unavailable.
For subsequent TSR loads, invoke LOADUP again, this time with /size=0,
since the upper memory block has already being assigned, but not
necessarily all used. New TSRs will look for unused memory within the
upper memory block assigned in the first LOADUP.
At the first LOADUP invocation, you want to specify a size equal to the
largest contiguous space available above your video ROM area (depending
on your HDisk controller and other installed adapters, this area size is
usually between 64 and 160 kilobytes). If no size is given, LOADUP
looks for 64 Kbytes in upper memory to load the TSR. The second, third,
etc. time a TSR is loaded, you should specify a size of 0 (or, if known,
the actual size required by the TSR). If you know what you are doing,
you may also specify the load segment location (i.e., /segment=D000).
If your TSRs requires less than 64 Kbytes, then 'LOADUP filespec' will
work fine without any arguments.
The LOADUP.EXE utility is now able to RELOCATE VMiX TO UPPER MEMORY,
in 386 computers. If your system has unused space between the
video rom and the system rom, VMiX will fit there. This reduces
the DOS footprint of VMiX to only 38Kb, which will allow larger
programs to fit in virtual memory partitions.
To load VMiX high you must first have started a copy of VM_BOOT in
your 386 computer with the startup parameter EMS=FFFF, so that the
first copy of VMiX will not try to initialize EMS memory in the target
upper memory area. To relocate VMiX requires 160 Kbytes of unused
upper memory, from segment address C800 thru EFFF.
You can not run LOADUP before VM_BOOT.EXE for the same reasons that
you can not run LOADHI before starting (QuarterDeck's memory manager)
QEMM.SYS.
Sample command line to load VMiX to upper memory:
VM_BOOT ems=ffff/loadup vm_boot
Wait until the first copy of VMiX has shutdown and the new upper memory
copy has started. The entire process is automatic.
5. VM_BOOT.EXE can use a very flexible configuration file, VMiX.INI,
to assist you in configuring VMiX startup, entering passwords,
and specifying user programs to autostart, after a remote COMM port
login.
The configuration file (optional) works in cunjunction with the
VSETUP.EXE utility. This utility is normally invoked in one of
two ways, described below.
The sample VMiX.INI included, is intended as a template for you to
make your own configuration file. VMiX.INI is a text file and can
be edited with any editor.
VSETUP currently performs 3 functions:
1) If it finds the [access passwords] Section in VMiX.INI,
it backups the file to VMiX.BAK and encrypts the text
passwords, changing the Section name to [encrpt passwords].
2) If invoked during startup, it will execute multiple command
lines given in the VMiX.INI [startup] Section. This is an
alternative to typing all startup commands with the VM_BOOT
command line.
(System Options, however, can ONLY be given at the command line)
3) The utility VSETUP.EXE (or a user program) can also be specified
with the 'set remote -l' command. VSETUP.EXE controls password
access and the startup of any program given in the [remote
startup] Section in VMiX.INI. Invoking 'set remote -l' without
specifying VSETUP.EXE will reset logins to the standard access
method (rshell).
When VSETUP is triggered by a COMM port access, (you must have
issued a 'set remote -l ???? vsetup' command) it will prompt
for an access password and match it against the encrypted
password list in VMiX.INI. After verifying access, it will
dispatch the single command line under the [remote startup]
Section, in VMiX.INI (this single command line can have
multiple commands, separated by a '/').
NOTE that the nine (9) Startup System Options can ONLY be given at
the VM_BOOT command line, and not inside VMiX.INI, since VSETUP
runs after VM_BOOT has already started.
To ensure that VSETUP.EXE can always find VMiX.INI, the best way to
start VMiX is with a full filespec and path for VM_BOOT.EXE,
ie., C:\VMiX\VM_BOOT VSETUP (from the VMiX directory)
then, you can change directories or reset path and VSETUP will always
find VMiX.INI (during remote logins).
Added the 'set process -d ????' command to allow a script to specify
a wait interval, in seconds. (Mostly for purposes of VMiX.INI scripts.)
We have noticed that it is better to put a small delay at the start
of ant 'dosjob' sequence in the [startup] Section of the .INI file,
to allow VSETUP.EXE to terminate and clear itself from memory before
the 'dosjob' task starts dispatching DOS programs.
6. The VT.EXE remote utility allows two or more VMiX systems to serially
link together (115.2 Kbaud maximum). This will form the basis for a
VMiX distributed system in a network of two or more VMiX hosts.
VT will start a remote session with the second computer via the COMM
port currently specified by 'set remote -l ????' (you can determine the
current setting with the 'examine status' command). You can use the
'set baud -c' command or the VW menus utility to set the baud rate at
both computers, for the link. The default baud rate is 9600 baud.
You will then be able to execute from host-1 any program on host-2.
We will be adding mountable remote files systems soon.
To set up a single remote session from host-1 connected to host-2
use the following:
COMMANDS GIVEN AT COMMANDS GIVEN AT
host-1 host-2
set remote -l1 set remote -l1 (COM1 for both)
do vt.exe - (Request host-2 session)
login - (host-2 asks for session name)
(you are in)
To set up dual links (one VT session on host-1 running on host-2, and
another VT session on host-2 running on host-1 use the following:
COMMANDS GIVEN AT COMMANDS GIVEN AT
host-1 host-2
set remote -l1 set remote -l1 (COM1 for both)
do vt.exe - (host-2 session)
login - (session name)
press Shift-Tab - (switch to Root)
set remote -l2 set remote -l2 (COM2 for both)
- do vt.exe (host-1 session)
- login (enter name)
press Shift-Tab - (return to VT)
NOTE: To activate (and transmit to the remote host) the IBM function
key equivalents (like Alt-X, PgUp, up-arrow, F3, etc.) you must toggle
IBM emulation by pressing Ctrl-F (one BEEP will be heard). Then the
application in the VT window will respond to the special IBM keys
(see Table below, if NOT in ANSI emulation).
If ANSI emulation is ON (default), then no key translation (as given
by the Table below) is necessary. The IBM special keys will be sent
as usual, directly from the keyboard.
When not in ANSI emulation you will need to press Ctrl-F again to
disable IBM emulation, after the special keys are used so that the
keyboard Shift key will act correctly (this is a side effect of
assuming that you could be at a terminal with no IBM special keys
to press).
NOTE: If you have started a VT session and type 'set baud -c1 2400',
you will be setting the remote computer send baud rate, you will
need to press Shift-Tab and switch to a local session to perform
the same command for your local computer, so that they both sync at
the new baud rate.
To quit VT.EXE press Alt-Z. This will terminate the VT program,
but will not quit the remote session. You should 'quit' the remote
session first (by typing 'quit'), before pressing Alt-Z.
7. Added an alternate way to start NEW TASKS MULTITASKING. Pressing
Shift-Enter or Shift-Shift-Enter, will start a new task, just as if
you had typed 'dosjob' or 'dosjob -W', correspondingly. Shift-Enter is
used instead of just the Enter key, after typing a command. If both
Shift toggles are pressed when the Enter key is hit, the new task will
use the FULL screen. If only one Shift is held down, the task will
start in a new WINDOW. If the command is for VMiX, like 'rshell',
you must preceed it with a forward '/' (i.e., '/rshell'). DOS commands
are always entered the same as in a DOS shell.
8. VMiX supports virtualized video in 386 Mode. In 286 computers, you
must start tasks on different video pages (see below). This eliminates
bleed-through by applications that write directly to the screen. Tasks
started with the 'dosjob -W' command, and all tasks started at a dumb
terminal will execute with virtualized video segments, in 386 Mode.
The Shift-Tab hot key will bring a virtualized task's video to the
foreground.
VMiX now handles video mode swapping between graphics and text modes.
The Shift-Tab hot-key will switch the console between tasks running
in graphics modes and those running in text mode. The VW pull-down
menus program (Process Menu) will allow new shells to be started in the
video mode of your choice (and/or video page of choice in Text Mode).
The same can be accomplished from the command line with:
'do -W /set video -m/rshell' (for mode select)
or,
'do -W /set video -p/rshell' (for page select)
Video mode switching will work in non-386 computers but the previous
mode screen contents will not be saved.
9. The VW menu shell has been greatly improved. We can now recommend
VW for regular use. VW can be used to start other programs or to
select VMiX options. VW is a multiple thread environment (like OS/2).
VW.EXE asks for a video page or video mode when starting a new VMiX
shell or DOS shell with FULL screen (choose page 0, when in 386 Mode).
VW will also ask if this is to be a REMOTE session, and it will auto-
matically start a VT session with another VMiX host, if requested.
The PROCESS menu now allows the setting of COMM port baud rates.
VW will respond to the [Home] key by repainting the menu bar. On non-
386 computers, switching to tasks executing in a different video page
or a different video modes will sometimes not restore the VW menu bar
on return to VW, so press [Home] to redisplay.
10. On systems with EGA/VGA, an additional 96Kb of DOS program space
is available (64Kb in monochrome mode). To toggle the additional
program space ON/OFF, use the VMiX command 'set system -v'. The
default is OFF, when VM_BOOT is started. This option will allow
large programs (684Kb maximum) to be executed with VMiX (the maximum
without this option is about 588Kb). Even though VMiX uses extended
memory in 286/386/486 ATs/PS2s, the user partition size is limited by
the address space of DOS, which is now expandable to 736Kb. If VMiX
is relocated to upper memory and you use this option, 684Kb program
space is possible.
This option can only be used in text modes.
11. I/O redirection is now fully implemented. Basically, if you start
a process (with 'dosjob'), you can then use the utility DSTAT.EXE
(use 'dstat -a' to view channel assignments) and determine what
channels are available to relocate your process to. Note that
available channels are shown as belonging to process 0, the scheduler.
Two procesess can also share the same channel. You can use the
'assign' command to create a new channel and link it to a serial port
(SRCSINK), to a printer port (CHRSINK), or to the console (SRCSINK)
which in VMIX is referenced as port 0 (COM0). Lastly, you use the
'assign process' syntax to assign a new channel to your executing
process. The original channel of the process will remain available to
restore the process back to its original state (See TECHREF.DOC).
Today VMiX is 120Kb of code and 40Kb of Kernel data. 70% Microsoft C and
30% MASM. VMiX is (C) Copyrighted 'try before you purchase software'.
This gives us wide distribution for a low cost, thus keeping your purchase
price also low.
----------------------------------------------------------------------------
When you are ready to register your version, or require:
pricing for support,
programming interface documentation,
the new printed manual,
the source code,
site licensing,
corporate pricing,
or other information, please contact us.
Enjoy exploring VMiX and thanks
for supporting its development,
ComSoft
Post Office Box 36 BBS (714) 720-1139 (24 Hrs.)
Corona del Mar, California 92625 VOICE (714) 720-1214 (8-6pm PDT)